package cn.com.dhcc.ddi.datasource.vo;

import java.util.Date;

import cn.com.dhcc.app.core.annotation.SiColumn;
import cn.com.dhcc.app.core.annotation.SiNotDbColumn;
import cn.com.dhcc.app.core.annotation.SiTable;
import cn.com.dhcc.app.core.base.ModuleFeatureBean;

/**
 * 
 * @ClassName: TableColVo
 * @Description: 数据库表字段信息类
 * @author fxx
 * @date 2016-11-16
 * 
 */
@SiTable(name = "t_ddi_table_col")
public class TableColVo extends ModuleFeatureBean implements Cloneable{
	@SiColumn(isId = true)
	private String id;
	@SiColumn(name = "table_id")
	private String tableId;//所属表id
	@SiColumn(name = "col_name")
	private String colName;//字段名称
	@SiColumn(name = "col_type")
	private String colType;//字段类型
	@SiColumn(name = "col_default")
	private String colDefault;//默认值
	@SiColumn(name = "col_comment")
	private String colComment;//字段描述
	@SiColumn(name = "is_pk")
	private String isPk;//是否为主键0 否 1是
	@SiColumn(name = "is_ic")
	private String isIc;//是否为增量字段 0 否 1是
	@SiColumn(name = "fk_table_name")
	private String fkTableName;//外键关联表字段名
	@SiColumn(name = "fk_tablecol_name")
	private String fkTablecolName;//外键关联表字段名
	private Date mtime;//最后修改时间
	@SiNotDbColumn
	private String dsId;
	@SiNotDbColumn
	private String tableName;
	
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getTableId() {
		return tableId;
	}
	public void setTableId(String tableId) {
		this.tableId = tableId;
	}
	public String getColName() {
		return colName;
	}
	public void setColName(String colName) {
		this.colName = colName;
	}
	public String getColType() {
		return colType;
	}
	public void setColType(String colType) {
		this.colType = colType;
	}
	public String getColDefault() {
		return colDefault;
	}
	public void setColDefault(String colDefault) {
		this.colDefault = colDefault;
	}
	public String getColComment() {
		return colComment;
	}
	public void setColComment(String colComment) {
		this.colComment = colComment;
	}
	public String getIsPk() {
		return isPk;
	}
	public void setIsPk(String isPk) {
		this.isPk = isPk;
	}
	public String getIsIc() {
		return isIc;
	}
	public void setIsIc(String isIc) {
		this.isIc = isIc;
	}
	public String getFkTableName() {
		return fkTableName;
	}
	public void setFkTableName(String fkTableName) {
		this.fkTableName = fkTableName;
	}
	public String getFkTablecolName() {
		return fkTablecolName;
	}
	public void setFkTablecolName(String fkTablecolName) {
		this.fkTablecolName = fkTablecolName;
	}
	public Date getMtime() {
		return mtime;
	}
	public void setMtime(Date mtime) {
		this.mtime = mtime;
	}
	public String getDsId() {
		return dsId;
	}
	public void setDsId(String dsId) {
		this.dsId = dsId;
	}
	public String getTableName() {
		return tableName;
	}
	public void setTableName(String tableName) {
		this.tableName = tableName;
	}
	
	@Override
	public String toString() {
		return "TableColVo [id=" + id + ", tableId=" + tableId + ", colName="
				+ colName + ", colType=" + colType + ", colDefault="
				+ colDefault + ", colComment=" + colComment + ", isPk=" + isPk
				+ ", isIc=" + isIc + ", fkTableName=" + fkTableName
				+ ", fkTablecolName=" + fkTablecolName + ", mtime=" + mtime
				+ ", dsId=" + dsId + ", tableName=" + tableName + "]";
	}
	/**
	 * 
	 * @Title: clone
	 * @Description: 克隆对象
	 * @param @param vo
	 * @param @return 参数
	 * @return TableColVo 返回类型
	 * @throws
	 */
    public TableColVo clone(TableColVo vo) {  
    	TableColVo o = null;  
        try {   
            o = (TableColVo)vo.clone();  
        } catch (CloneNotSupportedException e) {  
            e.printStackTrace();  
        }  
        return o;  
    }  
	
}
